/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package data;

import java.sql.*;
import java.util.LinkedList;
import javax.xml.registry.infomodel.User;
import utils.Tabelas;
import utils.Transaction;

/**
 *
 * @author Renato V
 */
public class PontuacaoData 
{
    //Busca pontos do user e retorna uma lista de Data object dos pontos
    public static LinkedList<PontuacaoDO> buscarPontos(int userID, Transaction tr) throws Exception 
    {
        Connection con = tr.getConnection();
        String sql = "select * from " + Tabelas.PONTUACAO + " where (user_id=?)";
        String s = String.valueOf(userID);
        
        PreparedStatement ps = con.prepareStatement(sql);
        ps.setString(1, s);
        ResultSet rs = ps.executeQuery();
        LinkedList<PontuacaoDO> pArray = new LinkedList<PontuacaoDO>();
         while (rs.next()) 
         {
            PontuacaoDO p = new PontuacaoDO();
            p.setUser_id(rs.getInt("user_id"));
            p.setPesquisa_id(rs.getInt("pesquisa_id"));
            p.setPontos(rs.getInt("pontos"));
            p.setData_resp(rs.getDate("data_resp"));
            p.setLiberado(rs.getBoolean("liberado"));
            pArray.add(p);
        }
        return pArray;
    }

     public int inserir(PontuacaoDO pontos,Transaction tr) throws SQLException {
        Connection con = tr.getConnection();
        String sql = "insert into " + Tabelas.PONTUACAO + "(" + Tabelas.PONTUACAO_user_id 
        + "," + Tabelas.PONTUACAO_pesquisa_id + "," + Tabelas.PONTUACAO_pontos + ","
        + Tabelas.PONTUACAO_data_resp + "," + Tabelas.PONTUACAO_liberado + ")" + " values (?,?,?,?,?)";
        PreparedStatement ps = con.prepareStatement(sql);
        ps.setInt(1, pontos.getUser_id());
        ps.setInt(2, pontos.getPesquisa_id());
        ps.setInt(3, pontos.getPontos());
        ps.setDate(4, pontos.getData_resp());
        ps.setBoolean(5, pontos.isLiberado());
        return ps.executeUpdate();
    }

}
